<!-------- @HEADER
 !
 ! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
 !
 !  Zoltan Toolkit for Load-balancing, Partitioning, Ordering and Coloring
 !                  Copyright 2012 Sandia Corporation
 !
 ! Under the terms of Contract DE-AC04-94AL85000 with Sandia Corporation,
 ! the U.S. Government retains certain rights in this software.
 !
 ! Redistribution and use in source and binary forms, with or without
 ! modification, are permitted provided that the following conditions are
 ! met:
 !
 ! 1. Redistributions of source code must retain the above copyright
 ! notice, this list of conditions and the following disclaimer.
 !
 ! 2. Redistributions in binary form must reproduce the above copyright
 ! notice, this list of conditions and the following disclaimer in the
 ! documentation and/or other materials provided with the distribution.
 !
 ! 3. Neither the name of the Corporation nor the names of the
 ! contributors may be used to endorse or promote products derived from
 ! this software without specific prior written permission.
 !
 ! THIS SOFTWARE IS PROVIDED BY SANDIA CORPORATION "AS IS" AND ANY
 ! EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
 ! IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
 ! PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL SANDIA CORPORATION OR THE
 ! CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
 ! EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
 ! PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
 ! PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
 ! LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
 ! NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
 ! SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
 !
 ! Questions? Contact Karen Devine	kddevin@sandia.gov
 !                    Erik Boman	egboman@sandia.gov
 !
 ! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
 !
 ! @HEADER
-------> 
<!doctype html public "-//w3c//dtd html 4.0 transitional//en">
<html>
<head>
   <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
   <meta name="GENERATOR" content="Mozilla/4.7 [en] (X11; U; SunOS 5.6 sun4m) [Netscape]">
  <meta name="sandia.approval_type" content="formal">
  <meta name="sandia.approved" content="SAND2007-4748W">
  <meta name="author" content="Zoltan PI">

   <title>Zoltan User's Guide: Graph interface</title>

</head>
<body bgcolor="#FFFFFF">

<div align=right><b><i><a href="ug.html">Zoltan User's Guide</a>&nbsp;
|&nbsp; <a href="ug_alg_hier.html">Next</a>&nbsp; |&nbsp; <a href="ug_alg_parmetis.html">Previous</a></i></b></div>

<h2>
<a NAME="Graph-build"></a>Graph build options</h2>

<p>
This page summarizes options relative to graph build for graph partitioning with <a href="ug_alg_parmetis.html">ParMetis</a>, <a href="ug_alg_ptscotch.html">Scotch</a>, sparse matrix ordering with  <a href="ug_order_parmetis.html">ParMetis</a>, <a href="ug_order_ptscotch.html">Scotch</a>, and graph <a href="ug_interface_color.html">coloring</a>.
</p>

<table WIDTH="100%" NOSAVE >

<tr>
<td><b>Parameters:</b></td>

<td></td>
</tr>

    <tr nosave="" valign="top">
      <td>&nbsp;&nbsp; <i>CHECK_GRAPH</i></td>
      <td nosave="">Level of error checking for graph input: 0 = no
checking, 1
= on-processor checking, 2 = full checking. (CHECK_GRAPH==2 is very
slow
and should be used only during debugging).</td>
    </tr>

    <tr nosave="" valign="top">
      <td>&nbsp;&nbsp;&nbsp; <i>GRAPH_SYMMETRIZE</i></td>
      <td nosave="">How to symmetrize the graph:
       NONE = graph is symmetric and no symmetrization is needed <br/>
       TRANSPOSE = if M is adjacency matrix of the input graph, output will be the graph representation of M+M<sup>T</sup> <br/>
       BIPARTITE = graph is symmetrized in a bipartite way : [[ 0 M ][M<sup>t</sup> 0]]
</td>
    </tr>

    <tr nosave="" valign="top">
      <td>&nbsp;&nbsp;&nbsp; <i>GRAPH_SYM_WEIGHT</i></td>
      <td nosave="">How edge weights are handled during symmetrization:
       ADD = weights of each arc are added <br/>
       MAX = only the heaviest arc weight is kept <br/>
<!--        ERROR = fail if complementary arcs don't have the same weight. -->
</td>
    </tr>

    <tr nosave="" valign="top">
      <td>&nbsp;&nbsp;&nbsp; <i>GRAPH_BUILD_TYPE</i></td>
      <td nosave="">Type of input, do allow some optimizations in the build process:<br/>
       NORMAL = graph is generic, no optimization can be performed<br/>
       FAST = graph global IDs are in the interval [0,n-1], with IDs [0,a] on process 0, IDs [a+1, b] on process 1, IDs [b+1, c] on process 2, etc. <br/>
       FAST_NO_DUP = graph global IDs are in the interval [0,n-1] with IDs [0,a] on process 0, IDs [a+1, b] on process 1, IDs [b+1, c] on process 2, etc., and there are no duplicate edges and no need of symmetrization.<br/>
       See <i>GRAPH_FAST_BUILD_BASE</i> below to allow IDs to that are one-based instead of zero-based.
</td>
    </tr>
    <tr nosave="" valign="top">
      <td>&nbsp;&nbsp;&nbsp; <i>GRAPH_FAST_BUILD_BASE</i></td>
      <td nosave="">When using <i>GRAPH_BUILD_TYPE</i> is FAST or FAST_NO_DUP,
IDs specified are in the range [GRAPH_FAST_BUILD_BASE, n-1+GRAPH_FAST_BUILD_BASE].
This parameter has no effect when <i>GRAPH_BUILD_TYPE</i> is NORMAL.
</td>
</tr>


<!--     <tr nosave="" valign="top"> -->
<!--       <td>&nbsp;&nbsp;&nbsp; <i>GRAPH_BIPARTITE_TYPE</i></td> -->
<!--       <td nosave=""> In the case of a bipartite symmetrization, -->
<!--        NONE = graph is symmetric and no symmetrization is needed <br/> -->
<!--        TRANSPOSE = if M is adjacency matrix of the input graph, output will be the graph representation of M+M<sup>T</sup> <br/> -->
<!--        BIPARTITE = graph is symmetrized in a bipartite way : [[ 0 M ][M<sup>t</sup> 0]] -->
<!-- </td> -->
<!--     </tr> -->

    <tr>
      <td valign="top"><b>Default values:</b></td>
      <td><br>
      </td>
    </tr>
    <tr>
      <td><br>
      </td>
      <td><i>CHECK_GRAPH</i> = 1</td>
    </tr>

    <tr>
      <td><br>
      </td>
      <td><i>GRAPH_SYMMETRIZE </i>= NONE</td>
    </tr>
    <tr>
      <td><br>
      </td>
      <td><i>GRAPH_SYM_WEIGHT </i>= ADD</td>
    </tr>

    <tr>
      <td><br>
      </td>
      <td><i>GRAPH_BUILD_TYPE </i>= NORMAL</td>
    </tr>
    <tr>
      <td><br>
      </td>
      <td><i>GRAPH_FAST_BUILD_BASE </i>= 0</td>
    </tr>

<tr>
<td VALIGN=TOP><b>Required Query Functions:</b></td>

<td></td>
</tr>

<tr>
<td></td>

<td><b><a href="ug_query_lb.html#ZOLTAN_NUM_OBJ_FN">ZOLTAN_NUM_OBJ_FN</a></b></td>
</tr>

<tr>
<td></td>

<td><b><a href="ug_query_lb.html#ZOLTAN_OBJ_LIST_FN">ZOLTAN_OBJ_LIST_FN</a></b>
</td>
</tr>

<tr VALIGN=TOP>

<td></td>
<td NOSAVE>
<b><a href="ug_query_lb.html#ZOLTAN_NUM_EDGES_MULTI_FN">ZOLTAN_NUM_EDGES_MULTI_F
N</a></b> or
<b><a href="ug_query_lb.html#ZOLTAN_NUM_EDGES_FN">ZOLTAN_NUM_EDGES_FN</a></b>
<br>
<b><a href="ug_query_lb.html#ZOLTAN_EDGE_LIST_MULTI_FN">ZOLTAN_EDGE_LIST_MULTI_F
N</a></b> or
<b><a href="ug_query_lb.html#ZOLTAN_EDGE_LIST_FN">ZOLTAN_EDGE_LIST_FN</a></b>
</td>

</tr>

</table>


<p>
<hr WIDTH="100%">[<a href="ug.html">Table of Contents</a>&nbsp; | <a href="ug_alg_hier.html">Next:&nbsp;
Hybrid Hierarchical Partitioning</a>&nbsp; |&nbsp; <a href="ug_alg_parmetis.html">Previous:&nbsp;
ParMETIS</a>&nbsp; |&nbsp; <a href="https://www.sandia.gov/general/privacy-security/index.html">Privacy and Security</a>]
</body>
</html>
